11433. Найдите сумму 2

 

Для заданного натурального числа n найдите значение суммы

 

Вход. Одно натуральное число n (n ≤ 1000).

 

Выход. Выведите значение суммы с 6 десятичными знаками.

 

Пример входа

Пример выхода

3

2.288145

 

 

РЕШЕНИЕ

циклы

 

Анализ алгоритма

Указанную сумму найдем при помощи цикла. На i-ой итерации в переменной s будем поддерживать сумму синусов первых i натуральных чисел:

s = sin 1 + sin 2 + … + sin n

На i-ой итерации к результату res будем прибавлять i-ое слагаемое 1 / s.

 

Реализация алгоритма

Читаем входное значение n.

 

scanf("%d", &n);

 

Вычисляем значение суммы при помощи цикла.

 

res = s = 0;

for (i = 1; i <= n; i++)

{

  s = s + sin(i);

  res = res + 1.0 / s;

}

 

Выводим ответ.

 

printf("%.6lf\n", res);